Client:
	SceneManager:
		TCPSocket
	end
end

Server:
	TCPServerSocket
	SocketList --list of all client sockets if one is closed, remove it.
end

When the player enters the lobby, they can choose what server to connect to. When they connect to the server, they'll enter a sort of character creation screen. Once that is done, they will enter the game world proper.

This is controlled through the config files for now.

using ';' delimited commands, how can I get it to work?

-------------------------

UDPNetworkUtility:
	void Open(port, packSize)
	void Close()

	//bind to an available channel
	int Bind(ip, port)
	int Bind(address)

	//bind to a certain channel
	int Bind(ip, port, channel)
	int Bind(address, channel)
	void Unbind(channel)

	int Send(channel, data, len)
	int Receive()

	GetIPAddress(channel)

	GetOutData()
	GetInData()

	GetOutPacket()
	GetInPacket()

	UDPsocket socket
	UDPpacket packOut
	UDPpacket packIn
end

-------------------------

packet_list.hpp:
	Ping:
	end
	Pong:
	end
	JoinRequest:
		avatarName
		...
	end
	JoinConfirm:
		yourID
	end
	NewPlayer:
		id
		position
		motion
		avatarName
	end
	MotionUpdate:
		id
		position
		motion
	end
	union Packet:
		MotionUpdate
	end
end

-------------------------

Networking protocol:
	//connections
	ping - ping the server
	pong - a response to a ping, carries the server name
	join request - from client to server, this is the initial contact the client makes. it carries all of the client's information, like the handle, avatar, etc.
	join confirm - the response to a join request, this makes the client enter the game proper, and carries the client's playerID.
	disconnect - from either the client or server, his officially ends communications between the two programs

	//player controls
	new player - a new player enters the world. carries all player info
	delete player - a player leaves the world, carries the player ID
	movement - this is the initial position and motion of a player in the world. it is relayed to all clients, and progresses using delta progression
